home *** CD-ROM | disk | FTP | other *** search
/ Inside Mac Games Volume 1 / Inside Mac Games Volume 1.iso / Shareware / Arcade / RoboWar / Tournament IV / Sapphire / Sapphire
Encoding:
Text File  |  1992-05-04  |  8.3 KB  |  508 lines  |  [RobW/RWAR]

  1. ##################
  2. #    Sapphire
  3. ##################
  4. #
  5. # ver. ZM8(CB20)
  6. # The Gembots
  7. # from the mine of 
  8. # Andrew Diamanduros
  9. # designer and programmer
  10. # Columbia Univ. Dept Mico.
  11. # 701 West 168th ST.
  12. # New York, New York, 10032
  13. # May 1992
  14. # 1992 - Forth RoboWar Tournament entry
  15. #
  16. # E-Mail:
  17. # American Online - Blade99
  18. # Many Thanks to the great programers
  19. # who showed me the way -
  20. # David Harris
  21. # Tom Morrison
  22. # Dave Gagnon
  23. # Josh Goldfoot
  24. # John Baylis
  25. # Chris Lord
  26. # David James
  27. # Shawn Hunter
  28. # ect. ect.
  29. #
  30. #
  31.  
  32. Start: 
  33.  y 20 < ReachTop if
  34.  y 40 < SeekTop1 if
  35.  0 aim' store range kill3 if
  36.  0 speedx' store
  37.  -6 speedy' store
  38.  
  39. SeekTop:
  40.  y 15 < Up if
  41.  y 40 < SeekTop1 if
  42.  collision crashn if
  43.  315 aim' store range kill3 if
  44.  0 aim' store range kill3 if 
  45.  45 aim' store range kill3 if
  46.  SeekTop jump
  47.  
  48. SeekTop1:
  49.  -2 speedy' store
  50.  0 speedx' store 
  51.  y 20 < ReachTop if
  52.  y 15 < Up if
  53.  collision crashn if
  54.  SeekTop1 jump
  55.  
  56. ReachTop:
  57.  0 speedy' store
  58.  x 250 > SeekCor1 if
  59.  6 speedx' store
  60.  y 15 < Up if
  61.  90 aim' store range kill3 if
  62.  180 aim' store range kill3 if 
  63.  270 aim' store range kill3 if
  64.  265 aim' store range kill3 if
  65.  
  66. SeekCor:
  67.  x 250 > SeekCor1 if
  68.  y 15 < Up if
  69.  collision crash if
  70.  90 aim' store range kill3 if 
  71.  180 aim' store range kill3 if 
  72.  270 aim' store range kill3 if
  73.  265 aim' store range kill3 if
  74.  SeekCor jump
  75.  
  76. SeekCor1:
  77.  2 speedx' store
  78.  x 280 > ReachCor if
  79.  x 283 > Back if
  80.  collision crash if
  81.  SeekCor1 jump
  82.  
  83. ReachCor:
  84.  x 283 > Back if
  85.  0 speedx' store
  86.  0 aim' store
  87.  drop drop
  88.  
  89. downa:
  90.  0 speedx' store
  91.  6 speedy' store 
  92.  energy 95 > mr1 if
  93.  
  94. downb:
  95.  y 265 > downc if
  96.  y 285 > back2 if 
  97.  energy 95 > mr1 if
  98.  collision crashs if
  99.  180 aim' store range kill3 if
  100.  0 aim' store range kill3 if
  101.  downb jump
  102.  
  103. downc:
  104.  0 speedx' store
  105.  0 speedy' store
  106.  energy 95 > mr if
  107.  
  108. main:
  109.  270 aim' store range kill0 if
  110.  275 aim' store range kill0 if
  111.  280 aim' store range kill0 if
  112.  285 aim' store range kill0 if
  113.  290 aim' store range kill0 if
  114.  295 aim' store range kill0 if
  115.  300 aim' store range kill0 if
  116.  310 aim' store range kill0 if
  117.  315 aim' store range kill0 if
  118.  320 aim' store range kill0 if
  119.  325 aim' store range kill0 if
  120.  330 aim' store range kill0 if
  121.  335 aim' store range kill0 if
  122.  340 aim' store range kill0 if
  123.  345 aim' store range kill0 if
  124.  350 aim' store range kill0 if
  125.  355 aim' store range kill0 if
  126.  270 aim' store range kill0 if
  127.  
  128. na:
  129.  sync sync sync
  130.  -15 movex' store
  131.  
  132. nb:
  133.  -1 speedx' store
  134.  -6 speedy' store
  135.  0 aim' store range killn if
  136.  90 aim' store range killn if
  137.  270 aim' store range killn if
  138.  energy 95 > mr if
  139.  
  140. nl:
  141.  y 25 < sb if
  142.  x 20 < cb if
  143.  energy 60 > mr if
  144.  collision crashn if
  145.  y 25 < sb if
  146.  x 20 < cb if
  147.  energy 60 > mr if
  148.  collision crashn if
  149.  y 25 < sb if
  150.  x 20 < cb if
  151.  energy 60 > mr if
  152.  collision crashn if
  153.  y 25 < sb if
  154.  x 20 < cb if
  155.  energy 60 > mr if
  156.  collision crashn if
  157.  nl jump
  158.  
  159. sb:
  160.  -1 speedx' store
  161.  6 speedy' store
  162.  180 aim' store range kills if
  163.  90 aim' store range kills if
  164.  270 aim' store range kills if
  165.  energy 95 > mr if
  166.  
  167. sl:
  168.  y 275 > nb if
  169.  x 20 < cb if
  170.  energy 60 > mr if
  171.  collision crashs if
  172.  y 275 > nb if
  173.  x 20 < cb if
  174.  energy 60 > mr if
  175.  collision crashs if
  176.  y 275 > nb if
  177.  x 20 < cb if
  178.  energy 60 > mr if
  179.  collision crashs if
  180.  y 275 > nb if
  181.  x 20 < cb if
  182.  energy 60 > mr if
  183.  collision crashs if
  184.  sl jump
  185.  
  186. cb:
  187.  0 speedx' store
  188.  10 speedy' store
  189.  y 280 > ReachBot if
  190.  180 aim' store
  191.  
  192. SeekBot:
  193.  y 285 > Up3 if
  194.  y 260 > SeekBot1 if 
  195.  energy 95 > mr1 if
  196.  y 285 > Up3 if
  197.  y 260 > SeekBot1 if 
  198.  energy 95 > mr1 if
  199.  y 285 > Up3 if
  200.  y 260 > SeekBot1 if 
  201.  energy 95 > mr1 if
  202.  y 285 > Up3 if
  203.  y 260 > SeekBot1 if 
  204.  energy 95 > mr1 if
  205.  135 aim' store range kill3 if
  206.  180 aim' store range kill3 if 
  207.  225 aim' store range kill3 if
  208.  SeekBot jump
  209.  
  210. SeekBot1:
  211.  2 speedy' store 
  212.  range 0 > Kill3 if
  213.  y 280 > ReachBot if
  214.  y 285 > Up3 if
  215.  range 0 > Kill3 if
  216.  y 280 > ReachBot if
  217.  y 285 > Up3 if
  218.  range 0 > Kill3 if
  219.  y 280 > ReachBot if
  220.  y 285 > Up3 if
  221.  range 0 > Kill3 if
  222.  y 280 > ReachBot if
  223.  y 285 > Up3 if
  224.  SeekBot1 jump
  225.  
  226. ReachBot:
  227.  0 speedy' store
  228.  x 45 < SeekCorR1 if
  229.  -9 speedx' store
  230.  y 285 > Up3 if
  231.  x 45 < SeekCorR1 if
  232.  -9 speedx' store
  233.  y 285 > Up3 if
  234.  x 45 < SeekCorR1 if
  235.  -9 speedx' store
  236.  y 285 > Up3 if
  237.  x 45 < SeekCorR1 if
  238.  -9 speedx' store
  239.  y 285 > Up3 if
  240.  90 aim' store range kill3 if
  241.  0 aim' store range kill3 if 
  242.  270 aim' store range kill3 if
  243.  
  244. SeekCorR:
  245.  y 285 > Up3 if
  246.  range 0 > Kill3 if
  247.  x 45 < SeekCorR1 if
  248.  y 285 > Up3 if
  249.  range 0 > Kill3 if
  250.  x 45 < SeekCorR1 if
  251.  y 285 > Up3 if
  252.  range 0 > Kill3 if
  253.  x 45 < SeekCorR1 if
  254.  y 285 > Up3 if
  255.  range 0 > Kill3 if
  256.  x 45 < SeekCorR1 if
  257.  90 aim' store range kill3 if 
  258.  0 aim' store range kill3 if 
  259.  270 aim' store range kill3 if
  260.  SeekCorR jump
  261.  
  262. SeekCorR1:
  263.  -2 speedx' store
  264.  x 17 < ReachCorR if
  265.  x 13 < Back3 if
  266.  -2 speedx' store
  267.  x 17 < ReachCorR if
  268.  x 13 < Back3 if
  269.  -2 speedx' store
  270.  x 17 < ReachCorR if
  271.  x 13 < Back3 if
  272.  -2 speedx' store
  273.  x 17 < ReachCorR if
  274.  x 13 < Back3 if
  275.  SeekCorR1 jump
  276.  
  277. ReachCorR:
  278.  x 13 < Back3 if
  279.  0 speedx' store
  280.  0 aim' store
  281.  x 13 < Back3 if
  282.  0 speedx' store
  283.  0 aim' store
  284.  x 13 < Back3 if
  285.  0 speedx' store
  286.  0 aim' store
  287.  x 13 < Back3 if
  288.  0 speedx' store
  289.  0 aim' store
  290.  drop drop
  291.  
  292. main2:
  293.   0 aim' store range kill3a if
  294.   5 aim' store range kill5 if
  295.  10 aim' store range kill5 if
  296.  15 aim' store range kill5 if
  297.  20 aim' store range kill5 if
  298.  25 aim' store range kill5 if
  299.  30 aim' store range kill5 if
  300.  35 aim' store range kill5 if
  301.  40 aim' store range kill5 if
  302.  45 aim' store range killc if
  303.  50 aim' store range kill5 if
  304.  55 aim' store range kill5 if
  305.  60 aim' store range kill5 if
  306.  65 aim' store range kill5 if
  307.  70 aim' store range kill5 if
  308.  75 aim' store range kill5 if
  309.  80 aim' store range kill5 if
  310.  85 aim' store range killk if
  311.  90 aim' store range kill3a if
  312.   0 aim' store range kill3a if
  313.   3 aim' store range kill5 if
  314.  13 aim' store range kill5 if
  315.  18 aim' store range kill5 if
  316.  23 aim' store range kill5 if
  317.  28 aim' store range kill5 if
  318.  33 aim' store range kill5 if
  319.  38 aim' store range kill5 if
  320.  43 aim' store range killc if
  321.  48 aim' store range killc if
  322.  53 aim' store range kill5 if
  323.  58 aim' store range kill5 if
  324.  63 aim' store range kill5 if
  325.  68 aim' store range kill5 if
  326.  73 aim' store range kill5 if
  327.  78 aim' store range kill5 if
  328.  83 aim' store range kill5 if
  329.  88 aim' store range kill5 if
  330.  90 aim' store range kill3a if
  331.  main2 jump
  332.  
  333. Kill0:
  334.  drop
  335.  sync sync
  336.  aim aim' sto
  337.  range kill0k if
  338.  na jump
  339.  
  340. Kill0k:
  341.  drop
  342.  150 fire' store
  343.  na jump
  344.  
  345. killn:
  346.  40 fire' store
  347.  drop
  348.  nl jump
  349.  
  350. kills:
  351.  400 fire' store
  352.  drop
  353.  sl jump
  354.  
  355. Kill3:
  356.  150 fire' store
  357.  return
  358.  
  359. kill4:
  360.  100 fire' store
  361.  drop
  362.  main2 jump
  363.  
  364. kill5:
  365.  range 50 < range 0 ! and kill3a if
  366.  range 100 < range 0 ! and kill2a if
  367.  40 fire' store
  368.  drop
  369.  main2 jump
  370.  
  371. kill2a:
  372.  100 fire' store
  373.  drop
  374.  main2 jump
  375.  
  376. Kill3a:
  377.  150 fire' store
  378.  drop
  379.  main2 jump
  380.  
  381. Killk:
  382.  drop
  383.  range 100 > main2 if
  384.  150 fire' store
  385.  main2 jump
  386.  
  387. killc:
  388.  drop
  389.  range 380 < kill5 if  
  390.  45 aim' store
  391.  5 fire' store
  392.  chronon 35 + d' store
  393.  kill4c jump
  394.  
  395. kill4c:
  396.  55 aim' store range kill5c if
  397.  35 aim' store range kill6c if
  398.  chronon d > kill5 if 
  399.  kill4c jump
  400.  
  401. Kill5c:
  402.  90 aim' store
  403.  150 fire' store
  404.  drop
  405.  main2 jump
  406.  
  407. Kill6c:
  408.  0 aim' store
  409.  150 fire' store
  410.  drop
  411.  main2 jump
  412.  
  413. Kill7c:
  414.  150 fire' store
  415.  drop
  416.  main2 jump
  417.  
  418. Back:
  419.  -2 speedx' store
  420.  x 280 > ReachCor if
  421.  Back jump
  422.  
  423. Back2:
  424.  -2 speedy' store
  425.  y 270 < downb if
  426.  Back jump
  427.  
  428. Up:
  429.  2 speedy' store
  430.  y 20 < ReachTop if
  431.  Up jump
  432.   
  433. Back3:
  434.  2 speedx' store
  435.  x 50 < ReachCorR if
  436.  Back3 jump
  437.  
  438. Up3:
  439.  -2 speedy' store
  440.  y 285 < ReachBot if
  441.  Up3 jump
  442.  
  443. crash:
  444.     range kill3 if
  445.     0 aim' store
  446.     range kill3 if
  447.     90 aim' store
  448.     range kill3 if
  449.     180 aim' store
  450.     range kill3 if
  451.     270 aim' store
  452.     range kill3 if
  453.     315 aim' store
  454.     range kill3 if
  455.     135 aim' store
  456.     range kill3 if
  457.     225 aim' store
  458.     range kill3 if
  459.     45 aim' store
  460.     return
  461.  
  462. crashn:
  463.     range kill3 if
  464.     0 aim' store
  465.     range kill3 if
  466.     315 aim' store
  467.     range kill3 if
  468.     45 aim' store
  469.     range kill3 if
  470.     90 aim' store
  471.     range kill3 if
  472.     135 aim' store
  473.     range kill3 if
  474.     180 aim' store
  475.     range kill3 if
  476.     225 aim' store
  477.     range kill3 if
  478.     270 aim' store
  479.     return
  480.  
  481. crashs:
  482.     range kill3 if
  483.     180 aim' store
  484.     range kill3 if
  485.     135 aim' store
  486.     range kill3 if
  487.     225 aim' store
  488.     range kill3 if
  489.     270 aim' store
  490.     range kill3 if
  491.     90 aim' store
  492.     range kill3 if
  493.     45 aim' store
  494.     range kill3 if
  495.     0 aim' store
  496.     range kill3 if
  497.     315 aim' store
  498.     return
  499.  
  500. mr1:
  501.  82 mine' store
  502.  return
  503.  
  504. mr:
  505.  50 mine' store
  506.  return